perm filename NODE[0,BGB]1 blob
sn#116876 filedate 1974-08-30 generic text, type C, neo UTF8
COMMENT ⊗ VALID 00007 PAGES
C REC PAGE DESCRIPTION
C00001 00001
C00002 00002 {P131W0,1260,0,1900⊂CαADDENDA.λ30JUFA}
C00005 00003 {I125,0FC}UNIVERSE NODE-2 FORMAT{JUFAλ15}
C00008 00004 {I125,0}CAMERA NODE-4 FORMAT{JUFAλ15}
C00011 00005 {I125,0}WINDOW NODE-6 FORMAT{JUFAλ15}
C00014 00006 {I125,0}BODY NODE-14 FORMAT{JUFAλ15}
C00017 00007 {I125,0}EDGE NODE-16 FORMAT{JUFAλ15}
C00020 ENDMK
C⊗;
{P131;W0,1260,0,1900;⊂C;αADDENDA.;λ30;JUFA}
⊂11.2 GEOMED Node Formats.⊃
The latest (June 1974), public implementation of GEOMED
distinguishes sixteen different node formats at the user level: Tram,
Empty, Universe, Sun, Camera, World, Window, Image, Text, Xnode,
Ynode, Znode, Body, Face, Edge and Vertex. Of the sixteen nodes, five
are unimplemented, open ended or trivial and so will not be
exhibited: Empty, Text, Xnode, Ynode and Znode. The empty node
contains all zeroes except for a one in the status word and a free
list pointer in the PFACE field. The Text nodes were implemented in
1973 by Tovar Mock and were taken out. The X, Y and Z nodes are
used for miscellaneous things such as beads, one-word atoms and
inertia tensors. Field names printed in capital letters indicate that the
contents of that field have one standard intrepretation; lower case
field names are temporary intrepretations. The machine address of a
node points to word zero of the format diagrams.
{λ19;JAFC;T166,307,434,650;H3;
I1025,0;}TRAM NODE-0 FORMAT{JUFA;λ15;}
The tram node, explained in Section 3.3, represents both
Cartesian coordinate systems and Euclidean transformation. Although
the status bits contain data, TRAM nodes are can be distinguished from
other nodes because bits 0 and 9 are either different or the word is all
zeroes in the PDP-10 floating number format.
{I1200,0;↓;JAFC;λ19;I∂310,∂340;B260,300,50;↑}
-3 XWC Location of TRAM origin
-2 YWC or Vector of TRAM translation.
-1 ZWC
0 IX X-axis unit vector
1 IY or 3 by 3 rotation matrix.
2 IZ
3 JX Y-axis unit vector
4 JY
5 JZ
6 KX Z-axis unit vector
7 KY
8 KZ
{I125,0;FC}UNIVERSE NODE-2 FORMAT{JUFA;λ15;}
The Universe node is the unique root of the data structure
and represents the universe of discourse. Directly accessible from
the universe node are the free storage list, the world ring and
the display ring. The world ring and display rings are headless so
two pointers are kept one indicating a "now" entity and the other
indicating the "first" made entity.
{I300,0;↓JAFC;λ19;
I∂310,∂340;B260,300,50;
I∂-100,∂0;V∂50,∂0;
I∂100,∂0;V∂50,∂0;
I∂100,∂0;V∂50,∂0;↑}
-3
-2
-1
0 STATUS BITS
1 AVAIL Free Storage List of Nodes.
2
3
4 NWRLD PWRLD Now World, First World.
5
6
7 NDPY PDPY Now Display Ring, First Display Ring.
8
{I1025,0;JAFC;}SUN NODE-3 FORMAT{JUFA;λ15;}
The sun node represents a very distant point light source.
The sun belongs to a ring of suns that belongs to a world, although
handling of multiple light sources is quite premature.
The location and orientation of the sun is carried by a TRAM pointed
to by the TRAM field.
{I1200,0;↓JAFC;λ19;I∂310,∂340;B260,300,50;
I∂50,∂0;V∂150,∂0;
I∂50,∂0;V∂50,∂0;↑}
-3
-2
-1
0 STATUS BITS
1
2
3
4 PWRLD World containing this sun.
5 BRO SIS Ring of Suns.
6 alt TRAM Location/Orientation of Sun.
7
8 nlnk plnk User links.
{I125,0;}CAMERA NODE-4 FORMAT{JUFA;λ15;}
The camera node contains the scale constants of projection,
the physical pixel size, PDX and PDY; the logical image size, LDX and LDY;
and the focal plane distance FOCAL.
{I300,0;↓JAFC;λ19;I∂310,∂340;B260,300,50;
I∂-100,∂0;V∂100,∂0;
I∂50,∂0;V∂250,∂0;↑}
-3 scalex = -focal/pdx Perspective Projection Scales.
-2 scaley = -focal/pdy
-1 scalez = -focal/pdz
0 STATUS BITS
1 PDX LDX Physical Pixel Size
2 PDY LDY and Logical image size.
3 FOCAL Focal Plane distance.
4 PWRLD World of Camera.
5 BRO SIS Camera Ring.
6 alt TRAM Camera location/orientation.
7 SIMAG PIMAG Simulated and Perceived Image Rings.
8 nlnk plnk User links.
{I1025,0;JAFC;}WORLD NODE-5 FORMAT{JUFA;λ15;}
The world node has a ring of bodies, a ring of cameras,
and a ring of suns which comprise the totality of existence for
image simulation. One world is the reality world whose
cameras correspond to actual video hardware and whoes bodies
correspond to the physical objects actually in the proximity of the
cameras. Other worlds are fantasy worlds for planning and learning.
{I1200,0;↓JAFC;λ19;I∂310,∂340;B260,300,50;
I∂-100,∂0;V∂400,∂0;↑}
-3 time and date Simulated World Time.
-2 PNAME1 Print Name of World.
-1 PNAME2
0 STATUS BITS
1 nface pface Potentially visible face list.
2 ned ped Potentially visible edge list.
3
4 NCAMR PCAMR Now camera and First camera.
5 BRO SIS World Ring.
6 NSUN TRAM Sun Ring and World Coordinates.
7 CW CCW Head links of Body Ring of World.
8 nlnk plnk User links.
{I125,0;}WINDOW NODE-6 FORMAT{JUFA;λ15;}
The display window node represents a mapping from a camera's
image coordinates (source image) to a display device's screen
coordinates (object image). Window mappings can be composed. The
mapped window is clipped to a border XL, XH, YL, YH in object
coordinates after being dilated by the scale factor MAG.
The windows are organized into a
ring of displays which each consists of a ring of windows.
{I340,0;↓JAFC;λ19;I∂310,∂340;B260,300,50;
I∂-100,∂0;V∂400,∂0;↑}
-3 SX SY Locus of center of Source Image.
-2 OX OY Locus of center of Object Image.
-1 MAG Magnification of Window Mapping.
0 STATUS BITS
1 XL XH Object Image Clipping Border.
2 YL YH
3
4 NCAMR Now Camera of Window.
5 BRO SIS Window ring of a display.
6
7 CW CCW Display ring of window rings.
8 nlnk plnk User Links.
{I1025,0;JAFC;}IMAGE NODE-7 FORMAT{JUFA;λ15;}
Image nodes represent either perceived contour images created
by input from CRE or simulated mosiac images created by the hidden
line eliminator, OCCULT. Like a world, images carry a list of bodies
and a time representing when the image was taken.
Image nodes also carry a pointer to a copy of the camera and
sun under which they were made.
{I1200,0;↓JAFC;λ19;I∂310,∂340;B260,300,50;I∂50,∂0;V∂250,∂0;↑}
-3
-2 PNAME1 Corresponding Video image file name.
-1 PNAME2
0 STATUS BITS
1
2
3
4 NCAMR PWRLD Camera Copy and World of this image.
5 NTIME PTIME Image ring links to form a film.
6 ALT Corresponding image.
7 CW CCW Head links of image body ring.
8 nlnk plnk User Links.
{I125,0;}BODY NODE-14 FORMAT{JUFA;λ15;}
The body node is the head of the face, edge and vertex rings
which use word 1, 2, and 3. The body node carries a parts tree structure
in word 4 and 5. There is a print name of up to ten characters carried
in words -2 an -1. The links of the eighth word are always left free
for linkage to user data structures.
{I300,0;↓JAFC;λ19;I∂310,∂340;B260,300,50;
I∂-100,∂0;V∂400,∂0;↑}
-3 free
-2 PNAME1 Ten character print name.
-1 PNAME2
0 STATUS BITS
1 NFACE PFACE Face ring.
2 NED PED Edge ring.
3 NVT PVT Vertex ring.
4 DAD SON Parts Tree links: up and down tree.
5 BRO SIS Parts Tree links: ring of siblings.
6 alt TRAM Body coordinate system TRAM.
7 CW CCW Body ring of world.
8 nlnk plnk User links.
{I1025,0;JAFC;}FACE NODE-15 FORMAT{JUFA;λ15;}
The face node carries a normalized face normal vector in AA, BB, and
CC; the negative distance of the face plane from the orgin, KK;
photometric parameters are kept in words 4, 5 and 7.
{I1200,0;↓JAFC;λ19;I∂310,∂340;B260,300,50;
I∂-100,∂0;V∂100,∂0;
I∂150,∂0;V∂50,∂0;
I∂50,∂0;V∂50,∂0;↑}
-3 AA Face plane normal vector.
-2 BB
-1 CC
0 STATUS BITS
1 NFACE PFACE Face ring of a body.
2 Ncnt PED Edge count and first edge.
3 KK Distance of face plane from origin.
4 red grn blu wht Reflectivities under four filters.
5 Lr Lg Lb Lb Sm Sn Luminosities and Spectral constants.
6 alt alt2 Temporaries.
7 QQ Video Intensity under four filters.
8 nlnk plnk User Links.
{I125,0;}EDGE NODE-16 FORMAT{JUFA;λ15;}
The important fields of the winged edge node are explained in
Chapter 2. The negative three words are used for 2-D edge
coefficients and for clipped display coordinates of the edge. The
alt, alt2 and cw field are used as temporary fields in OCCULT, BIN
and so on. The CCW field points at body of edge and expedites BGET.
The nlnk and plnk fields are kept empty for developmental work.
{I300,0;↓JAFC;λ19;I∂310,∂340;B260,300,50;I∂-100,∂0;V∂400,∂0;↑}
-3 x1dc AA y1dc Clipped Display Coordinates or
-2 x2dc BB y2dc 2-D Edge Coefficients or
-1 CC 3-D line Cosines.
0 STATUS BITS
1 NFACE PFACE Two faces of the edge.
2 NED PED Edge ring of the body.
3 NVT PVT Two vertices of the edge.
4 NCW PCW Wings: neighboring edges in PFACE and
5 NCCW PCCW Neighboring edges in NFACE.
6 alt alt2 Temporaries.
7 cw ccw Temporary and Body Link.
8 nlnk plnk User links.
{I1025,0;JAFC;}VERTEX NODE-17 FORMAT{JUFA;λ15;}
The vertex node carries a point's locus in three coordinate systems:
world coordinates, perspective projected coordinates and display
coordinates. The first edge of a vertex perimeter is contained in
the PED field. The alt, alt2, cw, ccw and Tjoint fields are used as temporaries.
{I1200,0;↓JAFC;λ19;I∂310,∂340;B260,300,50;
I∂-100,∂0;V∂150,∂0;I∂150,∂0;V∂100,∂0;↑}
-3 XWC World Locus
-2 YWC
-1 ZWC
0 STATUS BITS
1 XDC YDC Display Screen Locus.
2 Tjoint PED Temporary and First Edge.
3 NVT PVT Vertex ring of the body.
4 XPP Perspective Projected Locus.
5 YPP
6 alt ZPP alt2 ...also used for temporaries.
7 cw ccw temporaries.
8 nlnk plnk User links.